Re: retrieving varchar size
От | Michael Hirohama |
---|---|
Тема | Re: retrieving varchar size |
Дата | |
Msg-id | l0313030cb181334e3d7b@[204.179.128.24] обсуждение исходный текст |
Ответ на | Re: [HACKERS] Re: retrieving varchar size (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | pgsql-hackers |
Tom Lane <tgl@sss.pgh.pa.us> wrote on Thu, 30 Apr 1998: >Michael Hirohama <kamesan@ricochet.net> wrote: >> The historical reason why the POSTGRES backend is required to send multiple >> result sets is to support cursors on queries involving type inheritance and >> anonymous target lists. >> begin >> declare c cursor for >> select e.oid, e.* from EMP* e >> fetch 10 in c >> ... >> To handle the command sequence above, frontend applications would need to >> be provided with a new result descriptor when the "fetch 10 in c" crosses a >> result set boundary. > >I tried this and was unable to produce a failure. It looks like the >select only returns the set of fields applicable to the base class, >regardless of what additional fields may be possessed by some >subclasses. Which, in fact, is more or less what I'd expect. > >Is Michael remembering some old behavior that is no longer implemented? >And if so, is the old or new behavior the correct one? > > regards, tom lane Forgive me for my slow memory: I remember now that there was a decision made to not support exploding the expansion of anonymous target lists because of the extra complexity it would introduce into the parser and executor. Thus, Postgres would return at most result set per query processed. Smart users and smart applications would be able to navigate the inheritance hierarchy by explicitly specifying tables and columns as needed. ~~ <kamesan@ricochet.net>
В списке pgsql-hackers по дате отправления: